<?php
/*
 * 工具相关控制器
 */
class ToolController extends BasicController {
    
    private function init(){
        //接口响应控制器可以token为空
        Yaf_Registry::get('tokenPlugin')->checkAuth();
    }
    

    
//    /*
//    * 用户表数据修复 user_id 整体增加20w
//    */
//    public function userAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('User');
//        $userNewModel = Helper::load('User', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['user_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['user_id'] = $item['user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 用户详情表数据修复 user_id 整体增加20w
//    */
//    public function userdetailAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('User_detail');
//        $userNewModel = Helper::load('User_detail', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['user_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['user_id'] = $item['user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 用户登陆日志表数据修复 user_id 整体增加20w
//    */
//    public function userloginlogAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('User_login_log');
//        $userNewModel = Helper::load('User_login_log', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['ull_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['ull_user_id'] = $item['ull_user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 用户角色关系表数据修复 user_id 整体增加20w urr_id 整体增加20w
//    */
//    public function userrolerelationAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('User_role_relation');
//        $userNewModel = Helper::load('User_role_relation', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['urr_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['urr_id'] = $item['urr_id'] + 200000;
//                        $data['user_id'] = $item['user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 订单主表数据修复 user_id 整体增加20w tm_id 整体增加15w
//    */
//    public function trademainAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('Trade_main');
//        $userNewModel = Helper::load('Trade_main', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['tm_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['tm_id'] = $item['tm_id'] + 150000;
//                        $data['user_id'] = $item['user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 订单明细表数据修复 user_id 整体增加20w cm_id 整体增加 2000 tm_id 整体增加 15w tc_id 整体增加 15w
//    */
//    public function tradecourseAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('Trade_course');
//        $userNewModel = Helper::load('Trade_course', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['tc_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['cm_id'] = $item['cm_id'] + 2000;
//                        $data['tm_id'] = $item['tm_id'] + 150000;
//                        $data['tc_id'] = $item['tc_id'] + 150000;
//                        $data['user_id'] = $item['user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
//    
//    /*
//    * 订单统计中间表数据修复 user_id 整体增加20w cm_id 整体增加 2000 tm_id 整体增加 15w tc_id 整体增加 15w
//    */
//    public function coursestatisticsAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('Course_statistics');
//        $userNewModel = Helper::load('Course_statistics', $params);
//        
//        $cntOld = $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['cs_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        $data = $item;
//                        $data['cs_cm_id'] = $item['cs_cm_id'] + 2000;
//                        $data['cs_tm_id'] = $item['cs_tm_id'] + 150000;
//                        $data['cs_tc_id'] = $item['cs_tc_id'] + 150000;
//                        $data['cs_user_id'] = $item['cs_user_id'] + 200000;
//                        $userNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        $cntNew = $userNewModel->Total();
//        if($cntOld == $cntNew){
//            echo '全量导入成功！';
//        }
//        else{
//            echo '全量导入失败！';
//        }
//    }
    
    /*
    * 班级成员表表数据修复
    */
//    public function classmemberAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $params = [
//                    'db'        => 'com_webapi', 
//                    'driver'    => 'mysql', 
//                    'host'      => '120.27.248.173', 
//                    'port'      => 3306, 
//                    'user'      => 'root', 
//                    'pwd'       => 'c123456c', 
//                    'pconnect'  => 0
//                ];
//        
//        $pageSize = 5000;
//        
//        //pre_user
//        $userOldModel = Helper::load('User_detail');
//        $roleOldModel = Helper::load('User_role_relation');
//        $classNewModel = Helper::load('Class_member', $params);
//        
//        $total = $userOldModel->Total();
//        
//        if($total){//说明需要导入
//            $index = 0;//起始下标
//            while($total > 0){
//                $res = $userOldModel->Order(['user_id' => 'asc'])->Limit($index, $pageSize)->Select();
//                
//                if(!empty($res) && is_array($res)){
//                    foreach($res as $item){
//                        //判断一下该数据是否是学生的
//                        if(!$item['class_id']){
//                            continue;
//                        }
//                        
//                        $isStu = $roleOldModel->Where(['user_id' => $item['user_id'], 'role_id' => 21])->Total();
//                        
//                        if(!$isStu){
//                            continue;
//                        }
//                        
//                        $data = [
//                            'class_id'      => $item['class_id'],
//                            'user_id'       => $item['user_id'],
//                            'cm_type'       => 21,
//                            'create_time'   =>  CUR_TIMESTAMP,
//                            'modify_time'   =>  CUR_TIMESTAMP
//                        ];
//                        
//                        $classNewModel->Insert($data);
//                    }
//                }
//                
//                $index += $pageSize;
//                $total -= $pageSize;
//                
//                sleep(1);//休息1秒
//            }
//        }
//        
//        echo '执行完毕！';
//    }
    
    /*
    * 课程累计购买数修复脚本
    */
//    public function cmcountAction(){
//        @set_time_limit(0);
//        @ini_set('memory_limit','2048M');
//        
//        $cmModel = Helper::load('Course_main');
//        $tcModel = Helper::load('Trade_course');
//        $chModel = Helper::load('Course_hour');
//        
//        $res = $cmModel->Order(['cm_id' => 'asc'])->Select();
//        
//        if(!empty($res) && is_array($res)){
//            foreach($res as $item){
//                $tmpTcCnt = $tcModel->Where(['cm_id' => $item['cm_id'], 'tc_flag' => 2, 'isdelete' => 0])->Total();//此时已拿到对应课程的选课数量
//                $tmpChCnt = $chModel->Where(['cm_id' => $item['cm_id'], 'isdelete' => 0])->Total();//此时已拿到对应课程的课时数量
//                //此处开始反向更新
//                $uData = [];
//                $uData['cm_hour_num'] = $tmpChCnt;//课时数
//                $uData['cm_count'] = $tmpTcCnt;//购买数
//                $uData['modify_dateline'] = CUR_TIMESTAMP;
//                $cmModel->Where(['cm_id' => $item['cm_id']])->UpdateOne($uData);
//            }
//        }
//        
//        echo '执行完毕！';
//    }
    
}